1. Field of the Invention
This invention is related in general to the field of data management systems. In particular, the invention consists of a method for displaying a physical location of a data storage medium within an automated data storage library.
2. Description of the Prior Art
Automated data storage libraries are used for providing cost effective storage and retrieval of large quantities of data. In an automated data storage library, data is stored on data storage media that are, in turn, stored on storage shelves or the like inside the library in a fashion that renders the media, and its resident data, accessible for physical retrieval. Such media is commonly termed “removable media.” Data storage media may comprise any type of media on which data may be stored and which may serve as removable media, including but not limited to magnetic media (such as magnetic tape or disks), optical media (such as optical tap or disks), electronic media (such as PROM, EEPROM, flash PROM, Compactflash TM, Smartmedia TM Memory Stick TM, etc.), or other suitable media.
Typically, the data stored in automated data storage libraries is resident on data storage media that is contained within a cartridge and referred to as a data storage media cartridge. An example of a data storage media cartridge that is widely employed in automated data storage libraries for mass data storage is a magnetic tape cartridge.
In addition to data storage media, automated data storage libraries typically contain data storage drives that store data to, and/or retrieve data from, the data storage media. The transport of data storage media between data storage shelves and data storage drives is typically accomplished by one or more robot accessors (hereinafter termed “accessors”). Such accessors have grippers for physically retrieving the selected data storage media from the storage shelves within the automated data storage library and transporting such media to the data storage drives by moving in the X and Y directions.
Libraries typically use internal addressing to identify cartridge slot locations within the library. The internal addressing of the library is referred to as a library address or a physical address. Libraries typically present cartridge slot locations to host applications by way of an address, commonly referred to as an element address. The hosts' view of library reported address is referred to as a host address or a logical address. In some designs, the library address and the host address for any particular cartridge location may be the same. For example, all physical storage shelves in the library may be assigned a physical address beginning with a starting address and incrementing by one for each sequential slot in the library. This address information is presented by the library to host applications that send commands to the library to move cartridges based on this physical address information.
However, in some designs, the library address and the host address for a particular cartridge location is different. For example, the library may be partitioned into several logical libraries. Each logical library may be assigned to different host computers such that the host associated with one logical library has no awareness of any other logical libraries and associated cartridges. In this example, cartridges associated with one logical library may have the same logical address as seen by its host application as cartridges associated with another logical library as seen by its host application even though the library maintains unique physical addresses for each cartridge.
Virtualization of the storage slots in a library is another example of why the library address and the host address may not be the same. The library maintains a map of host (logical) storage addresses to actual library (physical) addresses when performing move operations and when reporting cartridge locations to a host application. The mapping of the logical address to the actual physical address must be maintained in a consistent fashion by the library so as to ensure proper movement of the intended cartridge. Using virtualization, the library may arbitrarily choose any slot to store media, i.e., the storage slots associated with a range of addresses used by a particular host need to be proximate and/or sequential. Mapping of addresses includes mapping of storage slots with or without media.
A host application manages data in a library using “location-centric” commands, and may utilize a medium changer protocol, such as small-computer systems interface (SCSI). The host application manages cartridge movement by specifying source and destination locations in the system. These source and destination locations are the element addresses reported by the library as host element addresses.
A host element addresses includes a host import/export element address (IEEA) which appears to the host as the address of an input/output slot. Additionally, the host element address includes a host storage element address which appears to the host as a storage slot location. Location-centric commands issued by a host application which include these host element addresses are mapped by the library to physical element addresses of actual media storage slots.
Host computers maintain a host catalog of these host element addresses, cross-referencing host element addresses with library data storage media cartridges. Each data storage media cartridge may be identified by a volume and serial number (VOLSER). Mapping the host element addresses to physical element addresses is managed by the library.
In an exemplary automated data storage library, a data storage media cartridge placed into a library's input/output station by either an automated device or an operator is issued an element address based on the physical location of the input/output station or the storage slot into which the cartridge is subsequently placed. In a library wherein the input/output stations and/or storage cells are segregated into cells, a 5-slot cell station may include a first slot having an element address and each subsequent slot's address would be an incremental increase of the starting slot's address. In this manner, a cartridge placed in the second slot would be given a physical element address one greater than that of the starting element address.
However, the element addresses of import/export elements (IEEs) may be virtualized, resulting in the use of virtual import/export element addresses (VIEEAs). In this manner, multiple hosts may share a single physical library and may utilize differing ranges of VIEE addresses for cartridges within its logical library. For example, a first host may be configured to access 10 import/export element addresses (IEEAs) while a second host may be configured to access 20 IEEAs. However, the physical element address for each cartridge may be reported to each host as a different VIEEA. Utilizing virutalization of the IEEAs, the cartridge placed in the second slot of the 5-cell station may posses a physical element address of 101 but be reported to the first host as VIEEA 106. By mapping the physical element address of each cartridge to a VIEEA, the host may continue to represent a particular data storage media as a single host element address, even if the data storage cartridge is moved to another physical element address.
With the advent of VIEEAs, assignment of element addresses becomes an algorithmic based function of the library firmware rather than a simple mapping of each physical location to a specific element address. When a cartridge is placed into an I/O slot, the volser of the cartridge is first checked to see if it is within a cartridge assignment policy (CAP) for a particular host. If so, the cartridge will be assigned a VIEEA corresponding only to that host and will not become visible to other hosts. If the cartridge's volser is not within any hosts' CAP, it will be assigned a common VIEEA that may be visible to multiple hosts. Volumes may also be stored in virtual storage element addresses (VSEAs), i.e., where the media resides in the library.
Some automated data storage libraries include three modes of operation including Auto, Pause, and Manual. While in manual mode, an operator may move cartridges within the library. The operator may view a manual mode panel to ascertain what actions are to be performed. These actions may include the mounting and ejecting of data storage devices.
For a manual mount operation, a drive used to access the data storage devices may include a drive operator panel which can display the volser and physical location of the cartridge. Alternatively, the operator may utilize a manual mode panel located at the library manager. This panel instructs the operator to place the new cartridge in a particular cell in the library. Demount commands are not displayed as the operator will leave demounted data storage devices in the drive unless another data storage device needs to be mounted. In this case, the demounted data storage device is placed back into the library or is held for insertion after completion of manual mode operation.
However, some automated data storage libraries are not support manual mode operation. For these types of automated data storage libraries, a manual mode must be provided by an external library manager which includes a manual mode panel displaying the volsers of volumes to be mounted.
While some automated data storage libraries are designed so that the library managers maintain both the physical and logical addresses of their data storage devices, other libraries utilize a library controller to manage the mapping of logical addresses to physical addresses. In these types of systems, a command issued by a host to a drive would only include the volser and the logical address. In manual mode, only the volser would be displayed at the drive as the logical address would be useless to an operator. Accordingly, it is desirable, in these types of automated data storage libraries, to have a method for displaying the physical location of data storage media in a manner that can be utilized by an operator.
One approach to this problem would be to utilize a library-specific command created by the library's vendor that works with a pre-defined library configuration. This vendor-specific command may be issued by a particular host configured to interface with a particular automated data storage library. The vendor-specific command may include a volser and a request to the library controller to report the corresponding physical address. A problem occurs, however, if the library configuration changes or if another configuration is desired, as the vendor-specific command will no longer function properly. Accordingly, it is desirable to have a system of issuing non-library specific commands that can be utilized by the drive to initiate a request for a physical address, wherein this non-vendor-specific command may be utilized in a multitude of varying host/library configurations.